var generateMatrix = function(n) {
    let m=0,
        num=n,
        count=1;
    let arr = new Array(n)
    for(let i=0;i<n;i++){
        arr[i]=new Array(n)
    }
    //console.log(arr);
    if(n%2!==0){
        arr[Math.floor(n/2)][Math.floor(n/2)]=n*n
    }
    while(num>=1){
        //第一行
        for(let i=0+m;i<n-1-m;i++){
            arr[0+m][i]=count++
        }
        //第一列
        for(let j=0+m;j<n-1-m;j++){
            arr[j][n-1-m]=count++
        }
        //最后一行
        for(let i=n-1-m;i>0+m;i--){
            arr[n-1-m][i]=count++
        }
        //第一列
        for(let j=n-1-m;j>0+m;j--){
            arr[j][0+m]=count++
        }
        m++;
        num=num-2
    }
    return arr
};
console.log(generateMatrix(3));


